/**
 * 导出选项接口定义
 */
export interface MiniblinkExportOptions {
  title?: string;
  width?: number;
  height?: number;
  exportType?: 'miniblink' | 'html' | 'project';
  outputPath?: string;
  includeResources?: boolean;
  customCSS?: string;
  customJS?: string;
}

/**
 * 预览选项接口定义
 */
export interface PreviewOptions {
  title?: string;
  width?: number;
  height?: number;
  interactive?: boolean;
  showControls?: boolean;
}

/**
 * 组件预览处理接口
 */
export interface ComponentPreviewHandler {
  preparePreviewData: (component: any) => any;
  renderOptions?: {
    useWrapper?: boolean;
    interactive?: boolean;
    renderChildren?: boolean;
  };
  handlePreviewInteraction?: (component: any, context: any) => boolean;
}

/**
 * 组件导出处理接口
 */
export interface ComponentExportHandler {
  generateHTML: (component: any, options?: any) => string;
  generateJS?: (component: any, options?: any) => string;
  resources?: Array<{type: string, path: string}>;
} 